/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.switz.agendacita.services.iface;

import com.switz.agendacita.dto.Usuario;
import com.switz.agendacita.vo.HorarioDisponible;
import java.sql.Date;
import java.sql.Time;
import java.util.List;

/**
 *
 * @author jose angel
 */
public interface UsuarioService {
	
    public void modificarUsuario(Usuario usuario);
    public void modificarDiasLaboralesTXT(String idEmpresa,String idPersonal,List diasLaborales,List  horasDescanzo);
    public void registrarPersonalTXT(Usuario usuario, String idEmpresa, List personalServicios, List DiasLaborales, List horariosDescanzo);
    public List listarHorasDisponibles(String idPersonal, String date, String idServicio, String idEmpresa);
    public List listarDiasSaturadosPorPersonal(String idPersonal, String idServicio, String idEmpresa);
    public Time obtenerPrimeraHoraDisponible(String idPersonal, String date, String idServicio, String idEmpresa);
    public HorarioDisponible obtenerPrimerHorarioDisponible(String idPersonal, String idServicio, String idEmpresa);
    public List listarPersonalEnFuncionServicioEmpresa(String idServicio, String idEmpresa) ;
    public void eliminarUsuario(Usuario usuario);
    public void registrarUsuario(Usuario usuario);
    public List listarReservacionesPendientesPorUsuario(String idUsuario);
    public List obtenerUsuarioPorMovil(String movil); 
    public List obtenerUsuarioPorTelefono(String telefono);
    public Usuario obtenerUsuarioPorMail(String mail);
    public Usuario obtenerUsuarioPorReservacion(String idAgenda);
    public Usuario loginUsuario(String mail, String psw,int tipoUsuario);
    public void restablecerPswUsuario(String psw, String id);
    public boolean comprobarDisponibilidadHorario(Time horaInicio,Time horaFin, String idPersonal,Date fecha);
    public boolean actualizarPsw(String idUsuario, String psw, String pswNuevo);
    public void actualizarStatusUsuario(String id);
    public Usuario obtenerUsuario(String id);
}
